Data storage devices generally operate to store and retrieve user data in a fast and effective manner. Some data storage devices utilize solid-state memory elements (cells) to store the user data, such as in the case of a solid-state drive (SSD). The memory cells can be volatile or non-volatile, and can take a variety of constructions such as but not limited to dynamic random access memory (DRAM), static random access memory (SRAM), Flash, electrically erasable programmable read only memory (EEPROM), spin-torque transfer random access memory (STRAM), and resistive random access memory (RRAM).
The cells can be programmed to store data in relation to a given programmed state. The programmed state can be sensed by a sense amplifier which senses a voltage drop across the cell responsive to application of a read current. Each cell can be used to store a single bit of user data, or can be used to store multiple bits of user data.
The memory cells can be arranged into an array of rows and columns. The cells in each column can be connected in a NAND configuration, such as in the case of certain types of Flash memory arrays. A page read operation can be carried out to read the contents of the memory cells along a selected row by applying a word line voltage to the selected row while applying read currents to bit lines along each column. In this way, the entire contents of the selected row (a page of memory) can be retrieved from the array. While operable, these and other types of read operations can be time and resource intensive.